package com.witsight.platform.util.lang;

import java.util.ArrayList;
import java.util.List;

import org.apache.commons.lang3.EnumUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**   
 * 说明：枚举工具类
 * @Title: EnumUtil.java 
 * @Package com.witsight.platform.util.lang 
 * @See: {@link EnumUtils}
 * Copyright: Copyright (c) 2017
 * Company:sany huax witsight team by product
 * @author: penght  
 * @date: 2017年9月11日 下午3:00:07 
 * @version: V1.0
 *
 */
public abstract class EnumUtil extends EnumUtils {
	/**
	 * 说明：定义后能再同一类中使用static常量log
	 */
	private static final Logger log = LoggerFactory.getLogger(EnumUtil.class);
	/**
	 * 
	 * 说明：取得枚举的名称
	 * @Title: getNames
	 * @See: {@link #getNames(Class)}
	 * @author penght
	 * @param enumClass 枚举类
	 * @return 枚举的名称
	 * @date: 2017年6月28日 上午8:26:36
	 */
	public static  <E extends Enum<E>> List<String> getNames(final Class<E> enumClass) {		
		List<String> names = new ArrayList<>();
		if (enumClass == null) {
			return names;
		}
		for (final E e: enumClass.getEnumConstants()) {
			names.add(e.name());
        }		
		return names;
	}
}
